|
Interactive Data Language (IDL) は、科学技術計算でよく使われるデータ分析用プログラミング言語である。 なおインタフェース記述言語 (Interface Definition Language) もIDLと略記されるが、全く関係ない。本記事ではInteractive Data Languageの意味でIDLという略称を使用するものとする。 == 概要 == IDLはベクトル化された数値を扱う対話型の言語であり、大量のデータを対話的に処理するのに使うのが一般的である(例えば画像処理など)。構文はFORTRANに近く、一部C言語に似ている。 IDL はVAX/VMSのFORTRANから発祥しており、構文にもその痕跡がある。 x = findgen(100)/10 y = sin(x)/x plot,x,y ここで、findgen という関数は浮動小数点数の1次元の配列を返すもので、その値は0から始まる整数の列と同じである。 上の例で2行目はベクトル化された処理を行っており、1行目で生成された100要素の配列全体を処理している。これは汎用の配列プログラミング言語(APLやJ)と似ている。この例ではゼロ除算も含まれている(x の先頭の要素が0であるため)。その場合IDLは算術オーバフローを通知するが、配列 y の対応する箇所(先頭)には NaN を格納して処理を続行する。NaN は3行目の plot コマンドで描画する際には無視される。 他の多くの配列プログラミング言語と同様、IDLのベクトル操作は非常に高速だが(高度に最適化されたFORTRANやC言語のループに匹敵する)、配列の各要素に個別に処理をすると非常に遅くなる。従ってIDLを使うなら、大量のデータにベクトル処理を施す場合が適している。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「Interactive Data Language」の詳細全文を読む スポンサード リンク
|